package algo3.g203.modelo.armas;

import algo3.g203.modelo.armas.explosiones.ExplosionBehavior;
import algo3.g203.modelo.armas.explosiones.ExplosionNula;
import algo3.g203.modelo.armas.explosiones.ExplosionPuntual;
import algo3.g203.modelo.fisica.Posicion;
import algo3.g203.modelo.naves.Nave;

public class MinaPuntualConRetardo extends MinaSubmarina{

	private final int RETARDO_PARA_ESTALLAR = 3;
	private final int COSTO_DEL_ARMA = 50;
	
	public MinaPuntualConRetardo(Posicion p) {
		super(p);
	}

	@Override
	public int getRetardoParaExplosion() {
		return this.RETARDO_PARA_ESTALLAR;
	}
	
	@Override
	public int getCosto() {
		return this.COSTO_DEL_ARMA;
	}

	@Override
	protected ExplosionBehavior getExplosionBehavior() {
		if (this.explotaAPartirDeEsteTurno())
			return new ExplosionPuntual();
		return new ExplosionNula();
	}
	
	@Override
	public void daniar(Nave n) {
		n.recibirDisparo(this);
	}
	
}
